java - 安全的 Nashorn JS 执行
全部标签 考虑以下代码:functionfoo(handlers){callSomeFunction(handlers.onSuccess,handlers.onFailure);}调用者可以:foo({onSuccess:doSomething,onFailure:doSomethingElse});或者只是foo()如果他/她没有什么特别的事情要做。上述代码的问题在于,如果未定义“处理程序”,就像上面简单的foo()调用一样,那么在执行callSomeFunction(handlers.onSuccess,handlers.onFailure)期间将抛出运行时异常).为了处理这种情况,可以将
我正在尝试为以下情况找到解决方案:我有一个由HTML、javascript、AJAX和广告等组成的网络应用程序。我希望用户为我的应用程序/网站做出贡献,创建将嵌入其中的插件。此插件将使用类似技术(ajax、HTML等)创建,因此我需要允许插件运行它们自己的javascript代码。每个插件都将在包含一些用户信息和插件的页面中运行(如旧的fbmlfacebook应用程序)问题在于,通过这种方式,插件还可以调用以获取用户信息。(因为插件的代码是嵌入的,所以它的域将与主网站相同,并且代码将完全在我的网站上)。所以问题是:我怎样才能避免它并精确控制插件可以获取有关用户的哪些信息?插件不会被检查
我有一个observableArray。我想在从observableArray中删除或添加项目后以及在完成其所有依赖项订阅调用后执行函数。喜欢:observableArray.push(newObject);//Ican'tputmyfunctioncallatthispointbecauseifanysubscriptionis..//withnewObjectorobservableArraywillexecuteasynch,andi..//wantmyfunctiontoexecuteafterallsuchsubscriptionexecution.有没有办法在knockou
tl;dr我可以在iframe上安全地执行不受信任的脚本吗?背景故事:我正在尝试makesecureJSONPrequests.许多旧版浏览器不支持WebWorkers,这意味着我提出的当前解决方案并不是最优的。我想我可以创建一个并在其中加载脚本。该脚本将执行一个JSONP请求(创建一个脚本标签),该请求将向主页发布一条消息。主页会收到消息,执行回调并销毁iframe。我设法dothissortofthing.functionjsonp(url,data,callback){variframe=document.createElement("iframe");iframe.style.
是否有一个模板引擎可以解析ES6templateliterals样式的模板?(例如"string${var}")而不违反脚本评估的内容安全策略(CSP)限制?CSPrestrictionsonscriptevaluation防止eval、newFunction、setTimeout(string)和setInterval(string)。有许多模板引擎可以提供或修改以提供类似于ES6风格的模板文字,例如JohnResig的MicroTemplates,lodash_.template和DoT.js.然而,所有这些似乎都通过使用newFunction违反了CSP。如果var可以是不受限制
我想编写一个JS函数以从浏览器访问存储在hardwaresecuritytoken上的公共(public)数据。插入USB端口。具体来说,在所有用户都有安全token的内部网中,我想要某种登陆页面,它会要求用户输入他/她的安全token凭据(插入USB端口),然后从该token中读取公共(public)信息(我并不是真的需要所有这些信息,但我主要对token中加载的用户名、证书名称及其到期日期感兴趣)和将它们加载到网页中(以显示)。我对此类安全设备几乎没有经验,但我认为这不是一个非常复杂的问题(尽管“谷歌搜索”未能让我找到正确的工作方向)。谢谢。 最佳答案
if(true){letm="yo";console.log(m);}console.log(m)输出:ReferenceError:misnotdefinedyo所以第4行的代码在第8行的代码之后执行。我对let的使用与此有什么关系吗?编辑:阅读评论后我意识到这可能是因为我的运行时间。这是我在Firefoxnightly中看到的:EDIT2:如果这确实只是我的运行时,那么是否因为这样的事情对生产代码有影响?跨浏览器的行为不一致?我该如何防范? 最佳答案 所以我认为FF运行时的行为是可以的。粗略地看一下规范(6.2.3.1等)表明代
设置style-src至'self'通过style禁用内联样式标签或style属性。这按预期工作。添加style通过JS的元素也被阻止。但我真的很惊讶我仍然可以设置HTMLElement的属性的style目的。例如,这不会触发CSP违规:document.getElementById('test').style.backgroundImage='url("image.png")';这如何防止攻击,如描述的那些here或here? 最佳答案 大概是因为如果您已经允许脚本注入(inject),样式修改是您最不担心的事情。样式元素和属性被
我需要使用async.js模块执行异步功能。但是当我执行外部功能时,我遇到了一些问题。该代码通过得很好。但是当我将全局变量更改为局部变量时,无法使用参数进行设置。varasync=require('async');varogs=require('open-graph-scraper');//globalvariablesvarparam1={url:'http://www.google.com/'};varparam2={url:'https://www.yahoo.com/'};functionfunction1(callback){ogs(param1,function(error
编辑:所以现在它不是随机的,看起来它总是无法从.css()方法执行(未进行任何更改)。仍然不要理解我可能犯的错误。我正在尝试使用jQuery和animate.css为删除一个div设置动画。问题是这个动画依赖于随机执行的事件和操作。此代码在.on("click"...处理程序中响应click运行:$('section').on('click','button',function(){//Removetheselectedcard$(this).closest('.mdl-card').addClass('animatedzoomOut').one('animationend',func